Skip to content

Claude/optimize main file size 1ak4o - #111

Merged
RivianTrackr merged 2 commits into
mainfrom
claude/optimize-main-file-size-1ak4o
Feb 20, 2026
Merged

Claude/optimize main file size 1ak4o#111
RivianTrackr merged 2 commits into
mainfrom
claude/optimize-main-file-size-1ak4o

Conversation

@RivianTrackr

Copy link
Copy Markdown
Owner

No description provided.

…S modules

The main file was a single 4,411-line file containing all frontend logic.
This splits it into focused modules under frontend/js/modules/:

- state.js (70 lines) — shared mutable state
- helpers.js (98 lines) — utility functions (rtgColor, escapeHTML, debounce, etc.)
- validation.js (238 lines) — security/input validation, URL sanitization
- analytics.js (65 lines) — click and search tracking
- tooltips.js (287 lines) — info tooltips and modal system
- search.js (604 lines) — smart search index, fuzzy matching, suggestions
- ratings.js (787 lines) — star ratings, review modal, reviews drawer, toasts
- cards.js (521 lines) — tire card rendering and lazy image loading
- favorites.js (108 lines) — user favorites system
- filters.js (1,005 lines) — filtering, sorting, pagination, URL state
- compare.js (71 lines) — compare bar logic
- server.js (210 lines) — server-side pagination mode
- image-modal.js (52 lines) — full-screen image preview

The main entry point (rivian-tires.js) is now ~408 lines, handling only
imports, event delegation wiring, and initialization. esbuild bundles
all modules into a single IIFE output — no changes to how WordPress loads
the script. All 83 existing tests continue to pass.

https://claude.ai/code/session_017rXHMqjGbMFnzGqRxxGszL
@RivianTrackr
RivianTrackr merged commit 08f8aeb into main Feb 20, 2026
4 checks passed
@RivianTrackr
RivianTrackr deleted the claude/optimize-main-file-size-1ak4o branch February 20, 2026 20:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants